package com.jinzhi.jzweb.domain;

import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.models.auth.In;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;


/**
 * 
 * <pre>
 * 
 * </pre>
 * <small> 2023-04-18 09:38:41 | Long</small>
 */
@Data
@SuppressWarnings("serial")
@TableName("jaz_user_order")
//这是的这里继承的基础服务类，有几个基本字段
public class JazUserOrderDO implements Serializable {

    /**
     * id  订单编号
     */
    @TableId
	private Long id;

    /** 订单发起人id */
    @ApiModelProperty(value = "订单发起人id")
    @TableField("initiate_id")
    private Long initiateId;

    /** 订单签约人id */
    @ApiModelProperty(value = "订单签约人id")
    @TableField("signing_id")
    private Long signingId;

    /** 合同id */
    @ApiModelProperty(value = "合同id")
    @TableField("contract_id")
    private Long contractId;


    /** 合同名称 */
    @ApiModelProperty(value = "合同名称")
    @TableField(exist = false)
    private String contractName;


    /**
     * 合同编号
     * */
    @ApiModelProperty(value = "合同编号")
    @TableField("number")
    private  String number;

    /** 订单总价 */
    @ApiModelProperty(value = "订单总价")
    @TableField("total_price")
    private BigDecimal totalPrice;

    /** 订单状态（0.待开始 / 1.进行中 / 2.已完成）3.已取消 */
    @ApiModelProperty(value = "订单状态（0.待开始 / 1.进行中 / 2.已完成）3.已取消")
    @TableField("status")
    private Integer status;

    /** 合同签署状态（1.待签署 / 2.已签署 / 3.已取消） */
    @ApiModelProperty(value = "合同签署状态（1.待签署 / 2.已签署 / 3.已取消）")
    @TableField("conclude_status")
    private Integer concludeStatus;

    /** 订单备注 */
    @ApiModelProperty(value = "订单备注")
    @TableField("remark")
    private String remark;

    /** 服务地址 */
    @ApiModelProperty(value = "服务地址")
    @TableField("address")
    private String address;

    /** 服务类型id（一对一） */
    @ApiModelProperty(value = "服务类型id（一对一）")
    @TableField("project_id")
    private String projectId;


    /** 服务类型名称*/
    @TableField(exist = false)
    private String projectName;


    /** 甲方姓名 */
    @ApiModelProperty(value = "甲方姓名")
    @TableField("name_jia")
    private String nameJia;

    /** 甲方手写签名 */
    @ApiModelProperty(value = "甲方手写签名")
    @TableField("signature_jia")
    private String signatureJia;

    /** 甲方身份证号 */
    @ApiModelProperty(value = "甲方身份证号")
    @TableField("identity_card_jia")
    private String identityCardJia;

    /** 甲方手机号 */
    @ApiModelProperty(value = "甲方手机号")
    @TableField("phone_jia")
    private String phoneJia;

    /** 甲方家庭住址 */
    @ApiModelProperty(value = "甲方家庭住址")
    @TableField("home_address_jia")
    private String homeAddressJia;

    /** 乙方姓名 */
    @ApiModelProperty(value = "乙方姓名")
    @TableField("name_yi")
    private String nameYi;

    /** 乙方家庭住址 **/
    @ApiModelProperty(value = "乙方家庭住址")
    @TableField("home_address_yi")
    private String homeAddressYi;

    /** 乙方手机号 */
    @ApiModelProperty(value = "乙方手机号")
    @TableField("phone_yi")
    private String phoneYi;

    /** 乙方身份证号 */
    @ApiModelProperty(value = "乙方身份证号")
    @TableField("identity_card_yi")
    private String identityCardYi;

    /** 乙方手写签名 */
    @ApiModelProperty(value = "乙方手写签名")
    @TableField("signature_yi")
    private String signatureYi;

    /** 订单创建时间 */
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
    @ApiModelProperty(value = "订单创建时间")
    @TableField("create_time")
    private Date createTime;

    /** 服务开始时间 */
    @ApiModelProperty(value = "服务开始时间")
    @TableField("start_time")
    private Date startTime;

    /** 服务结束时间 */
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
    @ApiModelProperty(value = "服务结束时间")
    @TableField("end_time")
    private Date endTime;

    /** 订单修改时间 */
    @ApiModelProperty(value = "订单修改时间")
    @TableField("update_time")
    private Date updateTime;

    /**
     * 是否签约
     */
    @ApiModelProperty(value = "是否签约")
    @TableField(exist = false)
    private Integer is;


    /**
     * 订单来源
     * */
    @ApiModelProperty(value = "订单来源")
    @TableField("order_source")
    private Integer orderSource;


    /**
     * 是否评论
     */
    @ApiModelProperty(value = "是否评论")
    @TableField(exist = false)
    private Integer isComment;


    /** 角色 */
    @ApiModelProperty(value = "角色")
    @TableField(exist = false)
    private String role;


    /**
     * 签约来源
     * */
    @ApiModelProperty(value = "签约来源")
    @TableField("sign_source")
    private String signSource;


    /** 需求id */
    @ApiModelProperty(value = "需求id")
    @TableField("demand_id")
    private String demandId;

    /** 订单类型 */
    @ApiModelProperty(value = "订单类型(1 团购 2需求)")
    @TableField("order_type")
    private Integer orderType;


    /**
     * 保洁清洁之前的图片(多个逗号隔开)
     * */
    @ApiModelProperty(value = "保洁清洁之前的图片(多个逗号隔开)")
    @TableField("before_picture")
    private String beforePicture;

    /**
     * 保洁清洁之后的图片(多个逗号隔开)
     * */
    @ApiModelProperty(value = "保洁清洁之前的图片(多个逗号隔开)")
    @TableField("after_picture")
    private String afterPicture;

    /**
     * 审核结果( 0 通过 1拒绝)
     * */
    @ApiModelProperty(value = "审核结果( 0 通过 1拒绝)")
    @TableField("audit_result")
    private Integer auditResult;

    /**
     * 拒绝原因
     * */
    @ApiModelProperty(value = "拒绝原因")
    @TableField("reject_reasion")
    private String rejectReasion;

    /** 判断是否接单 true是，false否  */
    @ApiModelProperty(value = "判断是否接单 true是，false否")
    @TableField(exist = false)
    private boolean hasTaking;

    /**
     * 带签名的合同地址
     * */
    @ApiModelProperty(value = "带签名的合同地址--用户合同")
    @TableField("contract_name_path")
    private String contractNamePath;

    @ApiModelProperty(value = "合同版本")
    @TableField(exist = false)
    private String version;


    @ApiModelProperty(value = "乙方合同是否阅读（0否、1是）")
    @TableField("conclude_read_yi")
    private Integer concludeReadYi;

    @ApiModelProperty(value = "甲方合同是否阅读（0否、1是）")
    @TableField("conclude_read_jia")
    private Integer concludeReadJia;

    @ApiModelProperty(value = "乙方订单是否阅读（0否、1是）")
    @TableField("order_read_yi")
    private Integer orderReadYi;

    @ApiModelProperty(value = "甲方订单是否阅读（0否、1是）")
    @TableField("order_read_jia")
    private Integer orderReadJia;

    /**
     * 合同类型(0 线上 1 线下)
     * */
    @ApiModelProperty(value = "合同类型(0 线上 1 线下)")
    @TableField("contract_type")
    private Integer contractType;


    /**
     * 商品规格id
     * */
    @ApiModelProperty(value = "商品规格id")
    @TableField("product_id")
    private Long productId;

    /**
     * 带签名的合同地址
     * */
    @ApiModelProperty(value = "带签名的合同地址--阿姨合同")
    @TableField("contract_name_yi_path")
    private String contractNameYiPath;

    /**
     * 是否单独购买：0:单独购买,1:团购订单
     * */
    @ApiModelProperty(value = "是否单独购买：0:单独购买,1:团购订单")
    @TableField("order_pay_type")
    private Integer orderPayType;


    /**
     * '历史用户合同'
     * */
    @ApiModelProperty(value = "'历史用户合同'")
    @TableField("history_contract_name_path")
    private String historyContractNamePath;

    /**
     * '历史阿姨合同'
     * */
    @ApiModelProperty(value = "'历史阿姨合同'")
    @TableField("history_contract_name_yi_path")
    private String historyContractNameYiPath;

    /** '商品类型表id' */
    @ApiModelProperty(value = "'商品类型表id'")
    @TableField("jaz_prod_type_id")
    private Long jazProdTypeId;

    /** '是否进行修改（0未修改，1已修改） ' */
    @ApiModelProperty(value = "'是否进行修改（0未修改，1已修改）'")
    @TableField("is_update")
    private Integer isUpdate;

}
